import { onlyUserName } from '@/api/user'

export default {
  // 用户名校验
  account (value) {
    if (!value) return '请输入用户名'
    const regex = /^[a-zA-Z]\w{5,19}$/
    if (!regex.test(value)) {
      return '必须字母开头且是6-12字'
    }
    return true
  },
  // 密码校验
  password (value) {
    if (!value) return '请输入密码'
    const regex = /^\w{6,24}$/
    if (!regex.test(value)) {
      return '密码必须在6-24位'
    }
    return true
  },
  // 密码确认
  rePassword (value, { form }) {
    if (!value) return '请输入密码'
    const regex = /^\w{6,24}$/
    // if (!regex.test(value)) {
    //   return '密码必须在6-24位'
    // }
    if (value !== form.password) return '两次密码不一致'
    return true
  },
  // 手机号校验
  mobile (value) {
    if (!value) return '请输入手机号'
    const regex = /^1[3-9]\d{9}$/
    if (!regex.test(value)) {
      return '手机号格式有误'
    }
    return true
  },
  // 验证码校验
  code (value) {
    if (!value) return '输入验证码'
    const regex = /^\d{6}$/
    if (!regex.test(value)) {
      return '输入6位验证码'
    }
    return true
  },
  // 协议条款
  isAgree (value) {
    if (!value) return '请勾选同意协议条款'
    console.log(value)
    return true
  },
  // 用户名
  async accounts (value) {
    if (!value) return '请输入用户名'
    const regex = /^[a-zA-Z]\w{5,19}$/
    if (!regex.test(value)) {
      return '必须字母开头且是6-12字'
    }
    const { result } = await onlyUserName(value)
    console.log(result.valid)
    if (result.valid) { return '用户名已存在' }
    return true
  }
}
